Linux Load Average
Load Average measures the average number of processes in a running (running on the CPU), runnable (waiting for CPU) or uninterruptible (waiting for I/O, e.g., disk/network) state over three time intervals: 1 minute, 5 minutes, and 15 minutes. It reflects system pressure from CPU, memory, disk, or network bottlenecks
Running & Runnable Process
Both Running and Runnable Processes are Marked as R (Running/Runnable) state  in tools like top, ps, or htop
- Running Process: A running process is a program or application that is currently executing on a computer's CPU (Central Processing Unit). 
- Runnable Process: A runnable process is a process that is fully loaded into memory and ready to execute on the CPU, but is waiting for its turn because the CPU is busy running other processes. 
Uninterruptible Process
An Uninterruptible process is a process that is in a special waiting state where it cannot be interrupted or stopped by normal signals, including user interrupts like Ctrl+C or even system signals like SIGKILL (kill -9). Usually displayed as state "D" in process listings.
- Waiting for disk reads/writes to complete 
- Waiting for network responses 
- Waiting for slow storage devices (tape drives, optical drives) 
- Hardware device operations 
- File system operations 
Read more: Linux Process States
How to Check Load Average?
- uptime: Show Load Average directly
- top: Real-time view (press- 1for per-core stats)
- cat /proc/loadavg: Raw data: 1-min, 5-min, active / total processes
How to check CPU Core Count?
- nproc: Total cores
- /proc/cpuinfo
❯ nproc
16
❯ grep 'model name' /proc/cpuinfo | wc -l 
16
Reasonable Load Average
The concept of a "reasonable" average load in Linux depends on  system's CPU core count, workload type, and tolerance for performance degradation.
- Ideal: Load Avg < 0.7 × CPU cores; Why: Leaves 30% headroom for traffic spikes or background tasks. 
- Acceptable (Tolerable): Load Avg ≤ 1.0 × CPU cores; Why: All cores are busy but not over-saturated. May experience slight delays. 
- Critical: Load Avg > 1.0 × CPU cores; Why: Processes queuing up → visible slowness or timeouts. 
